Communication networks are in wide use in many technological fields including distributed computing, data exchange and telecommunication applications. Communication networks generally include many nodes, such as bridges, LAN switches, routers, cross-connections and telephone switches. The networks further include communication links, such as cables, point-to-point radio connections and optical fibers, which connect the nodes. The networks also include ports, generally within some of the nodes, for attaching external devices such as computers, terminals, handsets, and multiplexers. These external devices are referred to as end-points, or hosts.
Networks are becoming increasingly complex, especially due to their increasing speeds of operation, the number of units interconnected by a network and the formation of large networks from different types of sub-networks. In addition, networks may transmit concurrently various types of data, such as text, voice, video and other multimedia files. In order to allow for these different types of data, some networks are designed to provide different amounts of bandwidth and different levels of quality of service.
A major issue in both newly-deployed and existing communication networks is testing and trouble-shooting, i.e., checking whether the network is operating according to its specifications and, if not, determining the cause of the network's inadequate performance (for example, the identity of a faulty unit). Dedicated point-to-point testing equipment is a commonly-used network testing tool. Such equipment is described, for example, in U.S. Pat. No. 5,477,531, whose disclosure is incorporated herein by reference. Usually, dedicated point-to-point testing equipment requires two users to coordinate their operations in order to identify a misbehaving component of the network. To test a large network, the testing equipment must be moved between many ports of the network.
U.S. Pat. No. 5,812,529, whose disclosure is incorporated herein by reference, describes a system and method for acquiring network performance data, built around a “mission server,” which interfaces with clients to receive requests for “missions.” A typical mission includes operations such as transmission and reception of data packets among devices connected to segments of the network. The mission is performed and/or supported by “sentries,” typically software agents running on stand-alone network devices or end-points. The sentries carry out mission operations in response to commands from the mission server, and report back to the mission server on the mission results.
U.S. Pat. Nos. 5,838,919 and 5,881,237, whose disclosures are incorporated herein by reference, describe methods, systems and computer program products for testing of network performance using test scenarios that simulate actual communications traffic between network endpoints. Specific test protocols are assigned to endpoint nodes on the network. Typically, the nodes are paired, and one of the nodes in the pair communicates the protocol to the other, associated node. A console node sets up the test protocols, initiates their execution and receives data on the test performance from the endpoint nodes.
Application performance measurement tools evaluate the performance of existing or new applications as they are introduced into a network. Typical tools of this sort include “Chariot,” produced by Ganymede (Research Triangle Park, N.C.), and “Webload” and “Webexam,” produced by Radview (Tel Aviv, Israel). Such tools, however, do not test the network itself independent of specific applications. Therefore, they cannot readily distinguish between problems whose root causes are in the application and those that are in the network itself.